home *** CD-ROM | disk | FTP | other *** search
- @if-using not(ocl-file-noover)
- @use (ocl-file-noover)
- ;OCL{{{}}}
- ;OCL{{{ reference description
- @if-using ( FUN-REFERENCE ) ; 1 ;
- Defines a function, which replaces overstrike keysequences (backspace
- character) by the corresponding single character. Underlines `backspace
- _' or `_ backspace' will be removed.
-
- At lines, starting with `escape character' (roff uses such sequences to
- mark partial line-feed) , this sequence will be removed.
-
- Font change character sequences `escape [ char m' will also be removed.
- @fi
- ;OCL}}}
- ;OCL{{{ vars
- ( defvar ( n-o-line n-o-change n-o-view n-o-regexp ) )
- ;OCL}}}
- ;OCL{{{ no-overstrike
- ;OCL{{{ reference
- @if-using ( FUN-REFERENCE ) ; 2 ; no-over-called
- ;OCL{{{ @noover-ref no-overstrike
- Removes all overstrike sequences (backspace character).
- ;OCL}}}
- @fi
- ;OCL}}}
- ( deffun no-overstrike
- (
- ;OCL{{{ save state
- set n-o-line store-line
- set n-o-change counter test-file-changed
- if n-o-change ( set-file-unchanged ) fi
- set n-o-view counter test-view
- if n-o-view ( delete-mode-view ) fi
- delete-mode-regular-expression
- set n-o-regexp +(ocl-argument 1)
- ;OCL}}}
- ;OCL{{{ do the no-overstrike
- add-mode-extended-regular-expression
- beginning-of-fold
- replace-string
- "( "( ". ") "( insert-ascii 8 "( "[^_] ") ") "+ ")
- "| "( "( "[^_] ") "( insert-ascii 8 ". ") "+ ")
- "| "( "_ "( insert-ascii 8 "_ ") "+ ")
- "| "( "^ "( "[[:space:]]* ") insert-ascii 27 ". ")
- "| "( insert-ascii 27 "\[.m ")
- newline-and-indent
- "\?1\4}\?5\6}\?8_}\?g11\g11}
- newline-and-indent
- beginning-of-fold
- ;OCL}}}
- ;OCL{{{ reset states
- if not(n-o-change) ( set-file-unchanged ) fi
- set n-o-change false
- if n-o-view ( add-mode-view ) fi
- set n-o-view false
- case
- ( =(1 n-o-regexp) ( delete-mode-regular-expression ) )
- ( =(2 n-o-regexp) ( add-mode-basic-regular-expression ) )
- esac
- goto-line-counter n-o-line
- ;OCL}}}
- )
- )
- ;OCL}}}
- ;OCL{{{ abort-hook-add
- @if-using not(ABORT-HOOK-ADD)
- @use (ABORT-HOOK-ADD)
- ( defmac abort-hook-add ( ) )
- @fi
- ( defmac abort-hook-add-saved ( abort-hook-add ) )
- ( undeclare ( abort-hook-add ) )
- ( defmac abort-hook-add
- ( abort-hook-add-saved
- if n-o-view ( add-mode-view set n-o-view false ) fi
- case
- ( =(1 n-o-regexp) ( delete-mode-regular-expression ) )
- ( =(2 n-o-regexp) ( add-mode-basic-regular-expression ) )
- esac
- )
- )
- ( undeclare ( abort-hook-add-saved ) )
- ;OCL}}}
- ;OCL{{{ reference hooks
- @if-using ( FUN-REFERENCE ) ; 3 ;
- The libary defines a macro `abort-hook-add' and a OCL tag
- ABORT-HOOK-ADD. This macro should be added to your abort-macro! If
- needed, an existing macro `abort-hook-add' will be integrated!
-
- The libary functions are marked as demand-loading.
- @fi
- ;OCL}}}
- ;OCL{{{ undeclares
- ( undeclare ( n-o-line n-o-change n-o-view n-o-regexp ) )
- ;OCL}}}
- @fi
-